package com.alibaba.algo.controller.app;

import com.alibaba.algo.cooperation.common.BaseResult;
import lombok.extern.slf4j.Slf4j;
import net.sf.cglib.proxy.Enhancer;
import net.sf.cglib.proxy.MethodInterceptor;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping(value = "/usercenter-admin-app/admin/appHealth")
@Slf4j
public class AppHealthController {

    @RequestMapping("/status")
    public BaseResult status() {
        return BaseResult.buildSuccess();
    }

//    private void stackOverflawError() {
//        log.info("stackOverflawError");
//        stackOverflawError();
//    }
//
//    @RequestMapping("/oom1")
//    public BaseResult oom1() {
//        stackOverflawError();
//        return BaseResult.buildSuccess();
//    }
//
//    @RequestMapping("/oom2")
//    public BaseResult oom2() {
//        int[] i = new int[100 * 1024 * 1024 * 1024];
//        return BaseResult.buildSuccess();
//    }
//
//    @RequestMapping("/oom3")
//    public void oom3() {
//        while (true) {
//            Enhancer enhancer = new Enhancer();
//            enhancer.setSuperclass(this.getClass());
//            enhancer.setUseCache(false);
//            enhancer.setCallback((MethodInterceptor) (o, method, objects, methodProxy) -> {
//                return methodProxy.invokeSuper(o, objects);
//            });
//            enhancer.create();
//        }
//    }
}
